//
//  RemoteOutput.h
//  RemoteIO
//
//  Created by Norihisa Nagano
//
//  copied from https://github.com/reinforce-lab/MonoTouch.AudioUnit
//
//  modified by chris allert to use libpatches for aftertaste
//

#import <AudioUnit/AudioUnit.h>

@interface RemoteOutput : NSObject {
    AudioUnit audioUnit;
    Float64 sampleRate;
    BOOL isPlaying;    
}

-(void)play;
-(void)pause;
-(void)stop;

- (void)initPatches;
- (void)declareModule: (NSString*)m withName: (NSString*)k;
- (void)setupModule: (NSString*)m withParam: (NSString*)k toValue: (NSString*)v;
- (void)patchModule: (NSString*)m withInput: (NSString*)i fromConstant: (NSString*)v;
- (void)patchModule: (NSString*)m withInput: (NSString*)i fromModule: (NSString*)n withOutput: (NSString*)o;

- (void)parsePatchLine: (NSString*)s;

@property(nonatomic) Float64 sampleRate;

- (void)prepareAudioUnit;
@end
